
<?php
/* @var $this FacturasController */
/* @var $model Facturas */

function getTotalSize($id)
{
   return Yii::app()->db->createCommand('SELECT sum(PRECIO*CANTIDAD-DESCUENTO+IMPUESTO) FROM Detfactura WHERE IDFACTURA='.$id)->queryScalar();
}

Yii::import('zii.widgets.grid.CGridColumn');
 
class TotalColumn extends CGridColumn {
 
     private $_total = 0;

    public function renderDataCellContent($row, $data) { // $row number is ignored

        $this->_total += (($data->PRECIO * $data->CANTIDAD) - $data->DESCUENTO + $data->IMPUESTO);
 
        echo $this->_total;
        $this->_total =0;
    }
}

class Total extends CGridColumn {
 
     private $_totalf = 0;

    public function renderDataCellContent($row, $data) { // $row number is ignored

        $this->_totalf += (($data->PRECIO * $data->CANTIDAD) - $data->DESCUENTO + $data->IMPUESTO);
 
        echo $this->_totalf;
    }
}



$this->breadcrumbs=array(
	'Facturas'=>array('create'),
	$model->IDFACTURA,
);

$this->menu=array(
	array('label'=>'Crear Facturas', 'url'=>array('create')),
	array('label'=>'Administrar Facturas', 'url'=>array('admin')),
);
?>

<h1>Factura #<?php echo $model->IDFACTURA; ?></h1>

<?php $this->widget('zii.widgets.CDetailView', array(
	'data'=>$model,
	'attributes'=>array(
		'IDFACTURA',
		'FECHA',
		'iDUSUARIO.NOMBRE',
		'iDCL.NOMBRE',
        'iDCL.APELLIDO',
		'TIPO',
	),
)); ?>

<?php 
$model1 = new Detfactura;
$this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'detfactura-grid',
    'dataProvider'=>$model1->filtro($model->IDFACTURA),
    'filter'=>$model1,
    'columns'=>array(
        'IDINVENTARIO',
        'PRECIO',
        'CANTIDAD',
        'DESCUENTO',
        'IMPUESTO',
        array(
            'htmlOptions'=>array('style'=>'width:100px'),
            'header' => 'Sub total',
            'class'  => 'TotalColumn',
		),
    ),
)); 
$total = getTotalSize($model->IDFACTURA);
echo "Total: ".$total;
/*echo "<br> Traduccion: ";
$this->widget('ext.numaletras.numerosALetras', array('valor'=>$total,'despues'=>'centimos'));*/
?>
